package com.ruijiang.service.VmService.Impl;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.ruijiang.dto.SkuDto;
import com.ruijiang.dto.page.SkuPageDto;
import com.ruijiang.entity.Sku;
import com.ruijiang.mapper.OrderServiceMapper.OrderMapper;
import com.ruijiang.mapper.VmServiceMapper.SkuMapper;
import com.ruijiang.result.PageResult;
import com.ruijiang.service.VmService.SkuService;
import com.ruijiang.vo.sku.SkuPageVO;
import com.ruijiang.vo.sku.SkuTop10VO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class SkuServiceImpl implements SkuService {

    @Autowired
    SkuMapper skuMapper;
    @Autowired
    OrderMapper orderMapper;

    /**
     * 搜索商品列表
     * @param skuPageDto
     * @return
     */
    @Override
    public PageResult getSkuList(SkuPageDto skuPageDto) {
        PageHelper.startPage(skuPageDto.getPageIndex(),skuPageDto.getPageSize());
        Page page = (Page) skuMapper.getSkuList(skuPageDto);
        return PageResult.pageBuild(page);
    }

    /**
     * 修改商品
     *
     * @param skuId
     * @param skuDto
     */
    @Override
    public void updateSkuById(String skuId, SkuDto skuDto) {

        skuMapper.updateSkuById(skuId,skuDto);
    }

    /**
     * 新增商品
     * @param skuDto
     */
    @Override
    public void insertSku(SkuDto skuDto) {
        skuMapper.insertSku(skuDto);
    }

    /**
     * 获取商圈下销量前10
     * @param businessId
     * @return
     */
    @Override
    public List<SkuTop10VO> getSkuTop10(String businessId) {
        List<SkuTop10VO> list = orderMapper.getSkuTop10(businessId);

        for (SkuTop10VO s:list){
            Sku sku = skuMapper.getSkuById(s.getSkuId());
            s.setImage(sku.getSkuImage());
        }
        return list;
    }

}
